package Sstring;
/**
 * StringBuilder是修改字符串的工具类
 * 内部维护一个可变的char数组,并且提供了修改字符串内容的相关操作,常见的:增删改插
 */
public class StringBuilderDemo {
    public static void main(String[] args) {
        //          0 1 2 3 4
        String str="练习两年半";

        //无参构造时,内部默认表示一个空字符串
//        StringBuilder builder=new StringBuilder();

        //内部默认表示str的内容
        StringBuilder builder=new StringBuilder(str);

         /*
            StringBuilder append(XXX xxx)
            将给定内容追加到字符串末尾,相当于原String中的"+"操作
         */
       // builder.append(",为了找个好工作");
        //获取stringbuilder内部表示的字符串内容
       // String line= builder.toString();
       // System.out.println(line);

        /*
        替换
        stringbuilder replace(int start,int end,string str)
        将当前字符串从下标start处到end处的内容替换为str指定的内容
        注意:下标包头不含尾
         */
        //builder.replace(9,16,"为了打篮球");

       // System.out.println(builder);

        /*
        stringbuilder delete(int a,int b)
        删除当前字符串指定范围的内容
         */
       // builder.delete(0,9);
       // System.out.println(builder);

        /*
        stringbuilder inser(int index,xxx xxx)
        将给定内容插入到指定位置
         */
      //  builder.insert(0,"练习两年半,");
      //  System.out.println(builder);

        /*
        stringbuilder reverse()
        表示反转字符串
         */
       // builder.reverse();
       // System.out.println(builder);

        builder.append(",为了打篮球")//添加
                .replace(5,10,"为了成为练习生")//替换
                .delete(0,5)//删除
                .insert(0,"蔡徐坤");//插入
        System.out.println(builder);
    }
}
